package com.xyy.saas.payment.adpater.xydLoan.core.enums;

import java.util.Arrays;
import java.util.Objects;

/**
 * @author wangzeqi
 */
public enum XydLoanResultStatus {

    /**
     * 未创建提款订单
     */
    NONE,

    /**
     * 待签约-已创建提款订单
     */
    ESIGN_WAITING,

    /**
     * 提款审批中-提款签约已提交但未出结果
     */
    ESIGN_SUBMIT,

    /**
     * （提款取消）（终态）
     */
    LOAN_CANCEL,

    /**
     * 提款拒绝
     */
    DECLINE,

    /**
     * 放款中
     */
    PROCCESSING,

    /**
     * 放款取消（终态，旧版）
     */
    FAILED,

    /**
     * 放款成功（终态）
     */
    SUCCESSED,

    ;

    public static XydLoanResultStatus fromStatus(String status) {
        return Arrays.stream(XydLoanResultStatus.values())
                .filter(s -> Objects.equals(s.name(), status))
                .findFirst()
                .orElse(null);
    }

}
